﻿#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QtCharts/QChartView>
#include <QtCharts/QLineSeries>
#include <QValueAxis>
#include <QChart>
#include <QPushButton>

QT_CHARTS_USE_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    void showSinSeries();  // 显示正弦曲线的槽函数
    void showCosSeries();  // 显示余弦曲线的槽函数
    void showTanSeries();  // 显示正切曲线的槽函数
    void showAll();

private:
    void setupChart();       // 配置图表的函数
    void addSinCosTanSeries(); // 添加正弦、余弦、正切曲线
    void setupUI();  // 设置UI界面
private:
    QChart *chart;           // 图表对象
    QChartView *chartView;   // 显示图表的视图
    QLineSeries *series;     // 折线系列
    QLineSeries *sinSeries;  // 正弦曲线
    QLineSeries *cosSeries;  // 余弦曲线
    QLineSeries *tanSeries;  // 正切曲线
    QValueAxis *axisX;       // X轴
    QValueAxis *axisY;       // Y轴

    QPushButton *sinButton;  // 显示正弦的按钮
    QPushButton *cosButton;  // 显示余弦的按钮
    QPushButton *tanButton;  // 显示正切的按钮
    QPushButton *allBtn;
};
#endif // MAINWINDOW_H
